////////////////////////////////////////////////////////////////////////////////
// Copyright 2009 CORE Solutions Limited
// All rights reserved.
// PROPRIETARY AND CONFIDENTIAL INFORMATION.
// Use is subject to license terms.
//
// FUNCTION ID      :   XLS
// AUTHOR           :   Saint Peng 
// DATE CREATE      :   2009/05/13
// DESCRIPTION      :   a VO file for the function, XLS
//                  :   
//                  :   
//                  :   
//
// MODIFICATION HISTORY:
// DATE         AUTHOR          VERSION NO.         COMMENT
// -----------  --------------  ------------------  -------------------
// 2009/05/13   Saint Peng      1.0                 source is generated.
//
//
//
////////////////////////////////////////////////////////////////////////////////

package com.erp.app.common.xls.vo;

import java.math.BigDecimal;
import java.sql.Date;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;

import com.erp.framework.model.vo.SimpleSearchMaintStyleVo;
import com.erp.framework.model.pk.SimpleSearchMaintStylePk;
import com.erp.app.common.xls.pk.XlsSqlPk;
import com.erp.framework.types.CustomBigDecimal;
import com.erp.framework.types.CustomBigInteger;
import com.erp.framework.types.CustomSqlDate;
import com.erp.framework.types.CustomTimestamp;
import com.erp.framework.types.CustomUtilDate;

/**
* <p>A <strong>VO</strong>(Value Object) is a JavaBean which provides property
* getter and setter methods for all of the bean properties, and implements
* <code>Serializable</code>, as required by the JavaBean specification
* The main purpose for this class is to store the data retrieved from the database,
* and the converted data from the web browsers.
*
* @author          Saint Peng 
* @version 1.0     2009/05/13
* @since           FrameWork 1.0
*
*/
public class XlsSqlVo extends SimpleSearchMaintStyleVo {

	//DB Table Name: T_XLS_SQL

	//PK Attributes
	private String companyCode;                      //DB Column Name: COMPANY_CODE
	private String menuId;                           //DB Column Name: MENU_ID
	private String funId;                            //DB Column Name: FUN_ID
	private String sqlLineNo;                        //DB Column Name: LINE_NO

	//Other Attributes
	private String sqlXlsSql;                        //DB Column Name: XLS_SQL
	private String sqlIsMain;                        //DB Column Name: IS_MAIN
	private String sqlSqlType;
	
	private ArrayList dtlRstList = new ArrayList();
	private HashMap dtlColumnMap = new HashMap();
	private HashMap hdrRstMap = new HashMap();
	private CustomBigInteger sqlLine;

	private String sqlHasRepeatLbl;
	private CustomBigInteger sqlRepeatLine;
	private String sqlRepeatFlag;
	private CustomBigInteger sqlRepeatLineTo;
	
	private CustomBigInteger sqlSLine1;
	private String sqlSLine1Flag;
	private CustomBigInteger sqlSLine2;
	private String sqlSLine2Flag;
	private CustomBigInteger sqlSLine3;
	private String sqlSLine3Flag;
	private CustomBigInteger sqlSLine4;
	private String sqlSLine4Flag;
	private CustomBigInteger sqlSLine5;
	private String sqlSLine5Flag;
	
//	HAS_REPEAT_LBL, REPEAT_LINE, REPEAT_FLAG
	public ArrayList getDtlRstList() {
		return dtlRstList;
	}

	public void setDtlRstList(ArrayList dtlRstList) {
		this.dtlRstList = dtlRstList;
	}

	public HashMap getHdrRstMap() {
		return hdrRstMap;
	}

	public void setHdrRstMap(HashMap hdrRstMap) {
		this.hdrRstMap = hdrRstMap;
	}

	public String getSqlSqlType() {
		return sqlSqlType;
	}

	public void setSqlSqlType(String sqlSqlType) {
		this.sqlSqlType = sqlSqlType;
	}

	/**
	* Stores the detail child names by the fully-qualified java class path.
	*
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	protected  void setChildTypesName() {
		//this.childTypesName=new String[2];
		//this.childTypesName[0]="com.erp.app.form.beans.FormApprovalListVo";
		//this.childTypesName[1]="com.erp.app.form.beans.FormAttachmentVo";
	}

	/**
	* Stores the table schema name by the fully-qualified java class path.
	*
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	protected void setTableSchemaName() {
		this.tableSchemaName="com.erp.app.common.xls.schema.XlsSqlSchema";
	}

	/**
	* Stores the detail child table schema names by the fully-qualified java class path.
	*
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	protected  void setChildTableSchemaNames() {
		//this.childTableSchemaNames=new String[2];
		//this.childTableSchemaNames[0]="com.erp.app.form.beans.FormApprovalListSchema";
		//this.childTableSchemaNames[1]="com.erp.app.form.beans.FormAttachmentSchema";
	}

	/**
	* Stores the DAO name by the fully-qualified java class path.
	*
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	protected void setDaoName() {
		this.daoName="com.erp.app.common.xls.dao.XlsSqlDao";
	}

	/**
	* Returns the primary key for this class.
	* @return      primary key of this class
	*
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	public SimpleSearchMaintStylePk getSearchMaintStylePk() {
		return new XlsSqlPk(this.companyCode, this.menuId, this.funId, this.sqlLineNo);
	}

	/**
	* Converts to a string representing the data in this object.
	* A new <code>String</code> object is allocated and initialized to 
	* contain the character sequence currently represented by this 
	* object. This <code>String</code> is then returned. Subsequent 
	* changes to this object do not affect the contents of the 
	* <code>String</code>. 
	*
	* @return     a string representation of the object.
	* @see        java.lang.Object#toString()
	* @author     Saint Peng 
	* @since      Framework 1.0
	*/
	public String toString() {
		String pkStr = "PK: {companyCode = " + this.companyCode
			+ "\n, menuId = " + this.menuId
			+ "\n, funId = " + this.funId
			+ "\n, sqlLineNo = " + this.sqlLineNo + "}\n";

		String colStr = "COL: {sqlXlsSql = " + this.sqlXlsSql
			+ "\n, sqlIsMain = " + this.sqlIsMain + "}\n";

		return "XlsSqlVo.toString() is:\n" + pkStr + colStr;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Generated Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////

	public String getCompanyCode() {
		return this.companyCode;
	}

	public String getMenuId() {
		return this.menuId;
	}

	public String getFunId() {
		return this.funId;
	}

	public String getSqlLineNo() {
		return this.sqlLineNo;
	}

	public String getSqlXlsSql() {
		return this.sqlXlsSql;
	}

	public String getSqlIsMain() {
		return this.sqlIsMain;
	}

	public void setCompanyCode(String companyCode) {
		this.companyCode = companyCode;
	}

	public void setMenuId(String menuId) {
		this.menuId = menuId;
	}

	public void setFunId(String funId) {
		this.funId = funId;
	}

	public void setSqlLineNo(String sqlLineNo) {
		this.sqlLineNo = sqlLineNo;
	}

	public void setSqlXlsSql(String sqlXlsSql) {
		this.sqlXlsSql = sqlXlsSql;
	}

	public void setSqlIsMain(String sqlIsMain) {
		this.sqlIsMain = sqlIsMain;
	}

	public HashMap getDtlColumnMap() {
		return dtlColumnMap;
	}

	public void setDtlColumnMap(HashMap dtlColumnMap) {
		this.dtlColumnMap = dtlColumnMap;
	}

	public CustomBigInteger getSqlLine() {
		return sqlLine;
	}

	public void setSqlLine(CustomBigInteger sqlLine) {
		this.sqlLine = sqlLine;
	}

	public String getSqlHasRepeatLbl() {
		return sqlHasRepeatLbl;
	}

	public void setSqlHasRepeatLbl(String sqlHasRepeatLbl) {
		this.sqlHasRepeatLbl = sqlHasRepeatLbl;
	}

	public String getSqlRepeatFlag() {
		return sqlRepeatFlag;
	}

	public void setSqlRepeatFlag(String sqlRepeatFlag) {
		this.sqlRepeatFlag = sqlRepeatFlag;
	}

	public CustomBigInteger getSqlRepeatLine() {
		return sqlRepeatLine;
	}

	public void setSqlRepeatLine(CustomBigInteger sqlRepeatLine) {
		this.sqlRepeatLine = sqlRepeatLine;
	}

	public CustomBigInteger getSqlSLine1() {
		return sqlSLine1;
	}

	public void setSqlSLine1(CustomBigInteger sqlSLine1) {
		this.sqlSLine1 = sqlSLine1;
	}

	public String getSqlSLine1Flag() {
		return sqlSLine1Flag;
	}

	public void setSqlSLine1Flag(String sqlSLine1Flag) {
		this.sqlSLine1Flag = sqlSLine1Flag;
	}

	public CustomBigInteger getSqlSLine2() {
		return sqlSLine2;
	}

	public void setSqlSLine2(CustomBigInteger sqlSLine2) {
		this.sqlSLine2 = sqlSLine2;
	}

	public String getSqlSLine2Flag() {
		return sqlSLine2Flag;
	}

	public void setSqlSLine2Flag(String sqlSLine2Flag) {
		this.sqlSLine2Flag = sqlSLine2Flag;
	}

	public CustomBigInteger getSqlSLine3() {
		return sqlSLine3;
	}

	public void setSqlSLine3(CustomBigInteger sqlSLine3) {
		this.sqlSLine3 = sqlSLine3;
	}

	public String getSqlSLine3Flag() {
		return sqlSLine3Flag;
	}

	public void setSqlSLine3Flag(String sqlSLine3Flag) {
		this.sqlSLine3Flag = sqlSLine3Flag;
	}

	public CustomBigInteger getSqlSLine4() {
		return sqlSLine4;
	}

	public void setSqlSLine4(CustomBigInteger sqlSLine4) {
		this.sqlSLine4 = sqlSLine4;
	}

	public String getSqlSLine4Flag() {
		return sqlSLine4Flag;
	}

	public void setSqlSLine4Flag(String sqlSLine4Flag) {
		this.sqlSLine4Flag = sqlSLine4Flag;
	}

	public CustomBigInteger getSqlSLine5() {
		return sqlSLine5;
	}

	public void setSqlSLine5(CustomBigInteger sqlSLine5) {
		this.sqlSLine5 = sqlSLine5;
	}

	public String getSqlSLine5Flag() {
		return sqlSLine5Flag;
	}

	public void setSqlSLine5Flag(String sqlSLine5Flag) {
		this.sqlSLine5Flag = sqlSLine5Flag;
	}

	public CustomBigInteger getSqlRepeatLineTo() {
		return sqlRepeatLineTo;
	}

	public void setSqlRepeatLineTo(CustomBigInteger sqlRepeatLineTo) {
		this.sqlRepeatLineTo = sqlRepeatLineTo;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Other Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////


}